#version 330 core
layout (location = 0) in vec3 aPos;  // 顶点位置
layout (location = 1) in vec3 aNormal; // 法线方向

out vec3 Normal; // 输出法线
out vec3 FragPos;

uniform mat4 model;  // 模型矩阵
uniform mat4 view;  // 视图矩阵
uniform mat4 projection;  // 投影矩阵

uniform vec2 cloudOffsetPos;

void main()
{
    gl_Position = projection * view * model * vec4(aPos, 1.0);  // 计算顶点位置
    Normal = aNormal;
    FragPos = vec3(model * vec4(aPos, 1.0));
}